New program, and line of software development, derived from an existing one
"Fork (software)" redirects here. For the operation whereby a process creates a copy of itself, see fork (system call).
In software engineering, a project fork happens when developers take a copy of source code from one software package and start independent development on it, creating a distinct and separate piece of software.[example needed] The term often implies not merely a development branch, but also a split in the developer community; as such, it is a form of schism.[1] Grounds for forking are varying user preferences and stagnated or discontinued development of the original software.
Free and open-source software is that which, by definition, may be forked from the original development team without prior permission, and without violating copyright law. However, licensed forks of proprietary software (e.g.Unix) also happen.
^"Schism", with its connotations, is a common usage, e.g.